package com.ruoyi.business.vo;

import lombok.AllArgsConstructor;
import lombok.Data;

import java.util.List;

/**
 * @Author ty
 * @Date 2025-08-25
 */
@Data
public class UpdateOrderPayInfoVo {
    private Long orderNo;//订单编号
    private Integer orderStatus;//订单状态：0-创建；1-部分支付；2-已支付；3-待发货；4-部分发货；5-已发货；7-确认收货；8-完成；9-取消
    private List<UpdateOrderPayInfoVo.OrderTimeInfo> orderTimeInfos;//订单状态变更时间信息
    private List<PayFinishInfo> payFinishInfos;//支付完成信息

    @Data
    @AllArgsConstructor
    public static class OrderTimeInfo {
        //更改订单状态时，其前置所有状态的时间都需要上传
        //101-订单创建时间；102-支付完成时间；103-可发货时间；104-订单首次发货时间；105-发货完成时间；106-确认收货时间；107-订单完成时间；108-订单取消时间
        private Integer type;
        //时间毫秒值
        private Long value;
    }


    @Data
    public static class PayFinishInfo{
        private String channelTrxNo;//通道单号
        private String payAmount;//订单实付金额
        private Integer payMethod;//支付方式:5-线下支付
        private Long payTime;// 支付时间
    }
}

